GetCollectionEqualityComparer Generic Method

Wintellect PowerCollections

Collapse imageExpand ImageCollapseAll imageExpandAll imageDropDown imageDropDownHover imageCopy imageCopyHover image
[This topic is pre-release documentation and is subject to change in future releases. Blank topics are included as placeholders.]

Gets an IEqualityComparer<IEnumerable<T>> implementation that can be used to compare collections of elements (of type T). Two collections of T's are equal if they have the same number of items, and corresponding items are equal, considered in order. This is the same notion of equality as in Algorithms.EqualCollections, but encapsulated in an IEqualityComparer<IEnumerable<T>> implementation.

An IEqualityComparer<T> is used to determine if individual T's are equal

Namespace: Wintellect.PowerCollections
Assembly:  PowerCollections (in PowerCollections.dll)

Syntax

C#
public static IEqualityComparer<IEnumerable<T>> GetCollectionEqualityComparer<T>(
	IEqualityComparer<T> equalityComparer
)
Visual Basic (Declaration)
Public Shared Function GetCollectionEqualityComparer(Of T) ( _
	equalityComparer As IEqualityComparer(Of T) _
) As IEqualityComparer(Of IEnumerable(Of T))
Visual C++
public:
generic<typename T>
static IEqualityComparer<IEnumerable<T>^>^ GetCollectionEqualityComparer (
	IEqualityComparer<T>^ equalityComparer
)

Parameters

equalityComparer
IEqualityComparer<(Of <T>)>
An IEqualityComparer<T> implementation used to compare individual T's.

Return Value

IEqualityComparer<IEnumerable<T>> implementation suitable for comparing collections of T for equality.

Type Parameters

T

Examples

The following code creates a Dictionary where the keys are a collection of strings, compared in a case-insensitive way
 Copy imageCopy Code
                Dictionary<IEnumerable<string>, int> = 
                    new Dictionary<IEnumerable<string>, int>(Algorithms.GetCollectionEqualityComparer<string>(StringComparer.CurrentCultureIgnoreCase));
            

See Also